Coupling Availability and Efficiency for Aspect Oriented Runtime Weaving Systems
نویسندگان
چکیده
Performance and availability are two critical requirements of today’s systems. Current dynamic AOP approaches have addressed the performance issue from one specific dimension: the performance of code after the weaving process. Other performance factors may have a great impact on overall system performance. This includes performance of the weaving process itself and also system availability in single and multithread environment. In this paper, we present Dynamic Aspect C++ (DAC++), a new runtime aspect weaving system that addresses the performance and availability issues in an integrated approach. By addressing the following issues we increase system availability for runtime aspect weaving: We propose a finergrained of atomic weaving, we introduce two new efficient aspect-weaving techniques and we support multithreading. The scope of performance impact has been extended to include a more general evaluation of the overall system performance. This includes the performance of both the woven product and the weaving/unweaving time. The synergy of these two contributions, increasing availability and overall performance consideration, led to runtime weaving systems of better throughput, response time, and accessibility to resources. General Terms Languages, Performance, Design
منابع مشابه
Run-Time and Atomic Weaving of Distributed Aspects
Run-time weaving of distributed aspects, if performed without any support for atomicity, endangers the global behavioral integrity of the application. Existing aspect-oriented middleware supports runtime weaving of distributed aspects, without addressing this problem. This inherently limits the type of behavioral changes that can be performed at run-time. This paper presents a model and an arch...
متن کاملAspect Model Unweaving
Since software systems need to be continuously available, their ability to evolve at runtime is a key issue. The emergence of models@runtime, combined with Aspect-Oriented Modeling techniques, is a promising approach to tame the complexity of adaptive systems. However, with no support for aspect unweaving, these approaches are not agile enough in an adaptive system context. In case of small mod...
متن کاملThe Dsaw Aspect-Oriented Software Development Platform
Aspect-Oriented Software Development (AOSD) provides systematic means to modular-ize crosscutting concerns in software development. Common AOSD benefits are a higher level of abstraction, concern reuse, better legibility, and software maintainability improvement. In AOSD, static weaving implementations commonly obtain better runtime performance, whereas dynamic weaving provides runtime applicat...
متن کاملAn Aspect-Oriented Middleware Architecture for Run-time and Atomic Weaving of Distributed Aspects
There is an increasing need for dynamic and context-sensitive adaptation of distributed applications in order to dynamically cope with evolving requirements of the usage context. To support dynamic and context-sensitive adaptation, we propose an aspect-oriente architecture that weaves and unweaves aspects at run-time on demand of the usage context. The goal of this report is to explore and solv...
متن کاملAspect-Oriented Programming Runtime-Enforcement of Temporal Properties in Security-Critical Software
The Aspect-Oriented Programming paradigm has been advocated for modularisation of cross-cutting concerns in large systems. Various applications of this approach have been explored in the literature, one of which is that of runtime-verification based on assertions or temporal properties. Manually weaving temporal properties to ensure correct execution into a large code base is difficult to achie...
متن کامل